package com.nkym.wypan.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.nkym.wypan.model.context.share.*;
import com.nkym.wypan.model.entity.Share;
import com.nkym.wypan.model.req.share.CheckCodeReq;
import com.nkym.wypan.model.resp.share.*;

import com.nkym.wypan.model.resp.userfile.BreadcrumbVo;
import com.nkym.wypan.model.resp.userfile.QueryUserFileVo;

import java.util.List;


/**
 * @author 19637
 * @description 针对表【wy_pan_share(用户分享表)】的数据库操作Service
 * @createDate 2023-08-16 14:00:16
 */
public interface ShareService extends IService<Share> {


    CreateShareVO createShare(CreateShareContext context);

    List<ShareVO> shares();

    void cancel(CancelShareContext context);

    CheckCodeVO checkCode(CheckCodeReq req);

    DetailShareVO shareDetail(DetailShareContext context);

    List<QueryUserFileVo> nextFolder(NextFolderContext context);

    void saveShare(SaveShareContext context);

    String getDownloadCode(GetCodeContext codeContext);

    void download(ShareDownloadContext shareDownloadContext);

    SimpleShareVO simpleShare(DetailShareContext context);

    List<FolderVO> listFolder(ListFolderContext context);

    List<BreadcrumbVo> breadcrumb(BreadcrumbContext breadcrumbContext);
}
